package com.lingnan.wanxiangxinxun.service;

import com.lingnan.wanxiangxinxun.entity.dto.EmployeeDTO;
import com.lingnan.wanxiangxinxun.entity.po.Authority;
import com.lingnan.wanxiangxinxun.entity.po.Employee;
import com.baomidou.mybatisplus.extension.service.IService;
import com.lingnan.wanxiangxinxun.entity.vo.common.PageVO;
import com.lingnan.wanxiangxinxun.entity.vo.service.AuthorityVO;

import java.util.List;

/**
 * <p>
 * 员工表 服务类
 * </p>
 *
 * @author swl
 * @since 2025-03-13
 */
public interface IEmployeeService extends IService<Employee> {

    //修改某个职位的权限
    void updateAuthority(Integer positionId, List<Integer> authorityIds);

    PageVO<Employee> getAllInPage(long current, long size);

    PageVO<Employee> getInCondition(EmployeeDTO employeeDTO);

    List<Employee> getEmployeeListByIds(List<Integer> ids);

    Employee empSignIn(Integer id, String password);

    //获取员工权限
    List<AuthorityVO> getAuthority(Integer id);

    //获取所有权限
    List<Authority> getAllAuthority();

    //获取员工权限(用于修改权限)
    List<Authority> getPositionAuthority(Integer id);


}
